<script setup lang="ts">
import {ref} from 'vue';

const count = ref(0);
// props 用于父组件传递给子组件 emit是子组件传递给父组件
// script setup 已经包含 defineProps 和 defineEmits 不需要显式导入
// 使用对象形式声明props
/*
//! 一个文件只能define一个Props [@vue/compiler-sfc] duplicate defineProps() call
  defineProps({
    title: string,
    likes: number,
  });
*/
// 或者使用Typescript的类型推断来声明Props
interface UserProps {
  name?: string,    // 如果不带? 在父组件传递数据到子组件时就必须要赋值
  age?: number,
};
const user = defineProps<UserProps>();

</script>

<template>
<br>
<button @click="count++; count++;">++{{ count }}</button>
<br>
<p>{{ name }}</p>

</template>

<style>
</style>
